A typical database access environment often requires that proprietary client applications interact effectively with databases. When retrieving data from such databases, such client applications require query engine formulated queries, typically in structured query language (“SQL”) being passed down and processed by the database for performance. However, in order for the SQL query to operate effectively, it must be free of any specific client application syntax that the databases do not support.
Since a premium is placed on reducing processing cycles, it is desirable to issue queries which result in as little data being returned as possible. If the query is such that it does not narrow down the amount of data to a manageable level, too much data is returned to the client side which results in an extensive amount of processing and expense for the client.
One prior art system provides a system and method for analyzing one or more SQL/on-line analytical programming (OLAP) window aggregates that are not supported by a target database system, for transforming the SQL/OLAP windowed aggregates into semantically equivalent standard aggregate functions that are supported by the target database system. However, the method and system described only addresses group query transformations in a database system that does not support the SQL-99 standard. Thus, the solution only applies to a specific standard and does not provide an effective general solution for a fourth generation language environment between a native system and a non-native database system for processing queries.
Another prior art solution provides a computer-implemented system and method for handling a database statement from a first database system. The database statement is formatted according to a language format used by the first database system so that a database specific statement may be generated which is operational within a different type of database system. However, such a system and method is limited only to queries between different database systems and fails to provide a broader solution which operates across multiple platforms and types of systems. There is thus a need to prevent or reduce the amount of local processing required to process a query, which is provided in accordance with the computer-implemented method and system described herein.